#ifndef UARTDRIVERDBG_H_
#define UARTDRIVERDBG_H_

#include <deque>

class UARTDriverDBG
{
public:
	bool Init(unsigned long baudRate);
	void SendChar(char ch);
	void SendData(char* buffer, int length);
	void SendData(char* buffer);
	void SendData16(char* buffer, int length);
		
	bool ReadChar(char& ch); 
	unsigned long ReadData(char* buffer);

	// buffer
	bool QueueData(char* data);
	bool QueueData(char* data, int size);
	void WriteProcess();
	
	void ReadProcess();
	unsigned long GetData(char* buffer);
	
private:
	std::deque<char> m_Buffer;
	std::deque<char> m_BufferRX;
};

#endif /*UARTDRIVERDBG_H_*/
